//类是对象具体事物的一个抽象，对象是类的具体表现
class XiaoJieXjie {
	name:string
	age:number
	ageName:string
	
	
	constructor(age:number , name:string) {
		this.name = name
		this.age = age
		this.ageName = age + '/' + name
	}
}


let adc:XiaoJieXjie = new XiaoJieXjie(18,'神经病')
console.log(adc)


//修饰符
// public:公有修饰符，可以在类内或者类外使用public修饰的属性或者行为，默认修饰符。
// protected:受保护的修饰符，可以本类和子类中使用protected修饰的属性和行为。
// private : 私有修饰符，只可以在类内使用private修饰的属性和行为。

class Dajiejie {
	public sex : string;
	protected name : string;
	private age : number;
	public constructor(sex:string,name:string,age:number) {
		this.sex = sex
		this.name = name
		this.age = age
	}
	
	public sayHello() {
		console.log('小哥哥好')
	}
	protected sayLove() {
		console.log('我爱你')
	}
	
}

var jiejie:Dajiejie = new Dajiejie('女','迪丽热巴',22)
console.log(jiejie.sex)
// console.log(jiejie.name)   //报错
// console.log(jiejie.age)    //报错
jiejie.sayHello()
// jiejie.sayLove()    //报错